package com.ray.pojo;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

/**
 * @Component:表示创建对象，对象放到容器中，作用是<bean></bean> 属性：value,表示对象名称，也就是bean的id属性值
 * 位置：在类的上面，表示创建此类的对象
 * @Component(value = "schoolByAnnotation") 等同于
 * <bean id="schoolByAnnotation" class="com.ray.pojo.Student"></bean>
 */
@Component("schoolByAnnotation")
public class School
{

    /**
     * 简单类型属性赋值：@Value
     *
     * @Value:简单类型属性值 属性：value 简单类型属性值
     * 位置：1) 在属性定义的上面，无需set方法，推荐使用
     * 2) 在set方法的上面
     *
     * 等同于
     * <bean id="schoolByAnnotation" class="com.ray.pojo.Student">
     *     <property name="name" value="石家庄铁道大学"></property>
     *     <property name="address" value="石家庄"></property>
     * </bean>
     */

    @Value("石家庄铁道大学")
    private String name;
    private String address;

    public void setName(String name)
    {
        this.name = name;
    }

    @Value("石家庄")
    public void setAddress(String address)
    {
        this.address = address;
    }

    @Override
    public String toString()
    {
        return "School{" + "name='" + name + '\'' + ", address='" + address + '\'' + '}';
    }
}
